<?php
namespace Product\Model\Entity;

class Contact
{
    protected $_id;
	protected $_companyname;
    protected $_description;
    protected $_latestactivitydatetime;
    protected $_website;
    protected $_googlewebtrackingid;
    protected $_person_id;
    protected $_account_id;
    protected $_industry_customfield_id;
    protected $_secondaryaddress_address_id;
    protected $_secondaryemail_email_id;
    protected $_source_customfield_id;
    protected $_state_contactstate_id;

    public function exchangeArray($data)
    {
        $this->id     = (isset($data['id'])) ? $data['id'] : null;
        $this->companyname = (isset($data['companyname'])) ? $data['companyname'] : null;
        $this->description  = (isset($data['description'])) ? $data['description'] : null;
		$this->latestactivitydatetime  = (isset($data['latestactivitydatetime'])) ? $data['latestactivitydatetime'] : null;
		$this->website  = (isset($data['website'])) ? $data['website'] : null;
		$this->googlewebtrackingid  = (isset($data['googlewebtrackingid'])) ? $data['googlewebtrackingid'] : null;
		$this->person_id  = (isset($data['person_id'])) ? $data['person_id'] : null;
		$this->account_id  = (isset($data['account_id'])) ? $data['account_id'] : null;
		$this->industry_customfield_id  = (isset($data['industry_customfield_id'])) ? $data['industry_customfield_id'] : null;
		$this->secondaryaddress_address_id  = (isset($data['secondaryaddress_address_id'])) ? $data['secondaryaddress_address_id'] : null;
		$this->secondaryemail_email_id  = (isset($data['secondaryemail_email_id'])) ? $data['secondaryemail_email_id'] : null;
		$this->source_customfield_id  = (isset($data['source_customfield_id'])) ? $data['source_customfield_id'] : null;
		$this->state_contactstate_id  = (isset($data['state_contactstate_id'])) ? $data['state_contactstate_id'] : null;	
    }
    public function __construct(array $options = null) {
        if (is_array($options)) {
            $this->setOptions($options);
        }
    }
	/*
    public function __set($name, $value) {
        $method = 'set' . $name;
        if (!method_exists($this, $method)) {
            throw new Exception('Invalid Method');
        }
        $this->$method($value);
    }

    public function __get($name) {
        $method = 'get' . $name;
        if (!method_exists($this, $method)) {
            throw new Exception('Invalid Method');
        }
        return $this->$method();
    }

    public function setOptions(array $options) {
        $methods = get_class_methods($this);
        foreach ($options as $key => $value) {
            $method = 'set' . ucfirst($key);
            if (in_array($method, $methods)) {
                $this->$method($value);
            }
        }
        return $this;
    }
	
	*/

    public function getId() {
        return $this->_id;
    }

    public function setId($id) {
        $this->_id = $id;
        return $this;
    }

    public function getCompany() {
        return $this->_companyname;
    }

    public function setCompany($name) {
        $this->_companyname = $companyname;
        return $this;
    }

    public function getDescription() {
        return $this->_description;
    }

    public function setDescription($description) {
        $this->_description = $description;
        return $this;
    }
	public function getLatestactivity() {
        return $this->_latestactivitydatetime;
    }

    public function setLatestactivity($latestactivitydatetime) {
        $this->_latestactivitydatetime = $latestactivitydatetime;
        return $this;
    }
    public function getWebsite() {
        return $this->_website;
    }

    public function setWebsite($website) {
        $this->_website = $website;
        return $this;
    }
	public function getGoogle() {
        return $this->_googlewebtrackingid;
    }

    public function setGoogle($googlewebtrackingid) {
        $this->_googlewebtrackingid = $googlewebtrackingid;
        return $this;
    }
	public function getPerson() {
        return $this->_person_id;
    }

    public function setPerson($person_id) {
        $this->_person_id = $person_id;
        return $this;
    }
	public function getAccount() {
        return $this->_account_id;
    }

    public function setAccount($account_id) {
        $this->_account_id = $account_id;
        return $this;
	}
	  public function getIndustry() {
        return $this->_industry_customfield_id;
    }

    public function setIndustry($industry_customfield_id) {
        $this->_industry_customfield_id = $industry_customfield_id;
        return $this;
	}
	public function getSecondaryaddress() {
        return $this->_secondaryaddress_address_id;
    }

    public function setSecondaryaddress($secondaryaddress_address_id) {
        $this->_secondaryaddress_address_id = $secondaryaddress_address_id;
        return $this;
    }
	public function getSecondaryemail() {
        return $this->_secondaryemail_email_id;
    }

    public function setSecondaryemail($secondaryemail_email_id) {
        $this->_secondaryemail_email_id = $secondaryemail_email_id;
        return $this;
    }
	public function getSource() {
        return $this->_source_customfield_id;
    }

    public function setSource($source_customfield_id) {
        $this->_source_customfield_id = $source_customfield_id;
        return $this;
    }
	public function getState() {
        return $this->_state_contactstate_id;
    }

    public function setState($state_contactstate_id) {
        $this->_state_contactstate_id = $state_contactstate_id;
        return $this;
    }
}
?>